Datos Los datos son descargados de la plataforma Ebird sobre mis avistamientos de aves desde el 2018 en el Eje cafetero.
---
title: "Aves_eje_Cafetero"
author: "Sandra Rairán"
output:
flexdashboard::flex_dashboard:
orientation: row
social: menu
source_code: embed
vertical_layout: fill
---
```{r setup, include=FALSE}
library(flexdashboard)
library(dplyr)
library(tidyr)
library(RColorBrewer)
library(tidyverse)
library(lubridate)
#------------------ Parameters ------------------
# Set colors
# https://www.w3.org/TR/css-color-3/#svg-color
count_color <- "mediumvioletred"
colombia_color <- "seagreen"
color <- "slateblue"
Durationmin_color <- "teal"
#------------------ Data ------------------
data_bird<- read.csv("birds_colombia.csv")
aves_colombia <- 1954
#Cantidad de especies
cant_esp <- length(unique(data_bird$Scientific_Name))
# epecies por año
# distinct values
especies_count <- group_by(data_bird, year)
especies_count <- summarise(especies_count, unique_especies = n_distinct(Scientific_Name))
especies_count<- especies_count %>% rename(Cantidad_especies = unique_especies)
#mutate
data_bird <-data_bird %>% mutate(observation_date = ymd(data_bird$Date))
bird <- data_bird %>%
select(Scientific_Name, observation_date, Count) %>%
glimpse()
# Observaciones por mes de espcies
df_observaciones <- data_bird %>%
mutate(observacion_mes = month(observation_date, label = TRUE),
observacion_año = year(observation_date)) %>%
group_by(Scientific_Name, year, Mes) %>%
summarize(observation_count = sum(Count, na.rm = TRUE)) %>%
group_by(Scientific_Name, Mes) %>%
summarize(observation_count_mean = mean(observation_count) %>% round(1)) %>%
ungroup() %>%
#complete(Scientific_Name, Mes = meses) %>%
replace_na(list(observation_count_mean = 0)) %>%
arrange(Scientific_Name, Mes)
glimpse(df_observaciones)
```
Resumen
=======================================================================
row {data-width=450}
-----------------------------------------------------------------------
### Cantidad de aves en Colombia {.value-box}
```{r}
valueBox(
value = paste(format(aves_colombia, big.mark = ","), "", sep = " "),
caption = "Cantidad de aves en Colombia",
icon = "fas fa-dove",
color = colombia_color
)
```
### Cantidad especies {.value-box}
```{r}
valueBox(
value = paste(format(cant_esp, big.mark = ","), " (",
round(100.2 * cant_esp / aves_colombia, 1),
"%)",
sep = ""
),
caption = "Total de Especies Observadas en el Eje Cafetero",
icon = "fas fa-crow",
color = count_color
)
```
Column {data-width=650}
-----------------------------------------------------------------------
### Aves observadas segun el tiempo en minutos
```{r}
plotly::plot_ly(data = data_bird) %>%
plotly::add_trace(x = ~ data_bird$Duration_Min,
y = ~ data_bird$Count,
type = "bar",
name = "Active",
marker = list(color = "goldenrod")) %>%
plotly::layout(barmode = 'stack',
yaxis = list(title = "Cantidad de Aves",
type = "log"),
xaxis = list(title = "Duracion observacion en Minutos"),
hovermode = "compare",
margin = list(
# l = 60,
# r = 40,
b = 10,
t = 10,
pad = 2
))
```
Column {data-width=350}
-----------------------------------------------------------------------
### Aves observadas segun el tiempo en minutos
```{r}
plotly::plot_ly(data = data_bird) %>%
plotly::add_trace(x = ~ data_bird$Time,
type = "histogram",
name = "Active",
marker = list(color = color)) %>%
plotly::layout(barmode = 'stack',
yaxis = list(title = "Hora de inicio pajareada",
type = "log"),
xaxis = list(title = "Hora de inicio (time)"),
hovermode = "compare",
margin = list(
# l = 60,
# r = 40,
b = 10,
t = 10,
pad = 2
))
```
### cantidad de especies por año
```{r}
library(reactable)
orange_pal <- function(x) rgb(colorRamp(c("#ffe4cc", "#ff9500"))(x), maxColorValue = 255)
reactable(especies_count, defaultSorted = list(Cantidad_especies = "desc"), columns = list(
Cantidad_especies = colDef(style = function(value) {
normalized <- (value - min(especies_count$Cantidad_especies)) / (max(especies_count$Cantidad_especies) - min(especies_count$Cantidad_especies))
color <- orange_pal(normalized)
list(background = color)
})
))
```
Gráficas(Especies por año y meses)
=======================================================================
Column {data-width=400}
------------------------------------------------------------------------------
### Observaciones por fecha
```{r}
data_bird %>%
count(observation_date) %>%
ggplot(aes(x = observation_date, y=n, group = 1)) +
geom_line( colour = "mediumvioletred", size=1, alpha=0.9, linetype=1) +
geom_point(color="mediumvioletred", size=2) +
ggtitle("Observaciones por fecha") +
labs(x = "Fecha Observacion",
y = "Observacoines")+
theme_light()
```
### Observaciones por mes
```{r}
# log10 para Para hacer que los datos con asimetría positiva sean más "normales"
df_observaciones %>%
ggplot(aes(Mes, observation_count_mean)) +
geom_jitter(color="mediumorchid", size=0.7, alpha=0.5) +
geom_boxplot(fill = "palegreen", colour = "mediumseagreen") +
labs(x = "Observaciones por mes",
y = "Promedio de aves observadas (log10)")+
theme_light()
```
### Observaciones por mes
```{r}
# log10 para Para hacer que los datos con asimetría positiva sean más "normales"
df_observaciones %>%
ggplot(aes(Mes, observation_count_mean)) +
geom_point(color="purple", alpha=0.8) +
labs(x = "Observaciones por mes",
y = "Promedio de aves observadas (log10)")
```
Información
=======================================================================
**Datos**
Los datos son descargados de la plataforma Ebird sobre mis avistamientos de aves desde el 2018 en el Eje cafetero.